# -*- coding: utf-8 -*-

# This code shows an example of text translation from English to Simplified-Chinese.
# This code runs on Python 2.7.x and Python 3.x.
# You may install `requests` to run this code: pip install requests
# Please refer to `https://api.fanyi.baidu.com/doc/21` for complete api document

import requests
import random
import json
from hashlib import md5


# Generate salt and sign
def make_md5(s, encoding='utf-8'):
    return md5(s.encode(encoding)).hexdigest()


def FanBaidu(from_lang_1, to_lang_1, query_1):
    # Set your own appid/appkey.
    appid = 'xxxxxxxxxxxxxx'
    appkey = 'xxxxxxxxxxxxxxxxx'
    Text = ""

    # For list of language codes, please refer to `https://api.fanyi.baidu.com/doc/21`
    from_lang = from_lang_1
    to_lang = to_lang_1

    endpoint = 'http://api.fanyi.baidu.com'
    path = '/api/trans/vip/translate'
    url = endpoint + path

    query = query_1
    salt = random.randint(32768, 65536)
    sign = make_md5(appid + query + str(salt) + appkey)

    # Build request
    headers = {'Content-Type': 'application/x-www-form-urlencoded'}
    payload = {'appid': appid, 'q': query, 'from': from_lang, 'to': to_lang, 'salt': salt, 'sign': sign}

    # Send request
    r = requests.post(url, params=payload, headers=headers)
    result = r.json()
    print(result)
    for i in result['trans_result']:
        print(i['dst'])
        Text = i['dst']
    return Text
# # Show response
# print(json.dumps(result, indent=4, ensure_ascii=False))
#
# a = json.dumps(result, indent=4, ensure_ascii=False)
